home *** CD-ROM | disk | FTP | other *** search
/ Aminet 40 / Aminet 40 (2000)(Schatztruhe)[!][Dec 2000].iso / Aminet / misc / emu / ATUtilities.lha / ATUtilities / ASM / PORT.ASM < prev    next >
Assembly Source File  |  2000-09-26  |  2KB  |  100 lines

  1. arg1  equ 16384+00
  2. arg2  equ 16384+02
  3. arg3  equ 16384+04
  4. arg4  equ 16384+06
  5. arg5  equ 16384+08
  6.  
  7. start:
  8.  mov ah,9
  9.  mov dx,offset jstart
  10.  int 21h
  11.  
  12.  mov ah,1
  13.  mov al,30
  14.  int 0b
  15.  cmp di,-1
  16.  jne janus_okay 
  17.  
  18.  mov dx,offset jfehler
  19.  mov ah,9
  20.  int 21h
  21.  jmp ende
  22.  
  23. janus_okay:
  24.  mov janus_ofs,di
  25.  
  26.  push ds
  27.  mov ds,0d400
  28.  mov si,cs:janus_ofs
  29.  mov di,0
  30.  mov es,040
  31.  mov ds:w[si+arg1],1
  32.  mov ds:w[si+arg2],es:w[08]
  33.  mov ds:w[si+arg3],es:w[0A]
  34.  mov ds:w[si+arg4],es:w[0C]
  35.  mov ds:w[si+arg5],es:w[0E]
  36.  call near call_and_wait
  37.  
  38.  mov ds:w[si+arg1],2
  39.  xor ah,ah
  40.  xor bh,bh
  41.  xor ch,ch
  42.  xor dh,dh
  43.  mov al,es:b[078]
  44.  mov bl,es:b[079]
  45.  mov cl,es:b[07A]
  46.  mov dl,es:b[07B]
  47.  mov ds:w[si+arg2],ax
  48.  mov ds:w[si+arg3],bx
  49.  mov ds:w[si+arg4],cx
  50.  mov ds:w[si+arg5],dx
  51.  call near call_and_wait
  52.  
  53.  mov ds:w[si+arg1],3
  54.  mov ds:w[si+arg2],es:w[00]
  55.  mov ds:w[si+arg3],es:w[02]
  56.  mov ds:w[si+arg4],es:w[04]
  57.  mov ds:w[si+arg5],es:w[06]
  58.  call near call_and_wait
  59.  
  60.  mov ds:w[si+arg1],4
  61.  xor ah,ah
  62.  xor bh,bh
  63.  xor ch,ch
  64.  xor dh,dh
  65.  mov al,es:b[07C]
  66.  mov bl,es:b[07D]
  67.  mov cl,es:b[07E]
  68.  mov dl,es:b[07F]
  69.  mov ds:w[si+arg2],ax
  70.  mov ds:w[si+arg3],bx
  71.  mov ds:w[si+arg4],cx
  72.  mov ds:w[si+arg5],dx
  73.  call near call_and_wait
  74.  
  75.  mov ds:w[si+arg1],10
  76.  call near call_and_wait
  77.  pop ds
  78.  
  79. ende:
  80.  ret
  81.  
  82.  
  83. call_and_wait  proc near
  84.  mov ah,7
  85.  mov al,30
  86.  int 0b
  87.  mov ah,8
  88.  mov al,30
  89.  int 0b
  90.  ret
  91. call_and_wait  endp
  92.  
  93. janus_ofs   dw 0
  94. jstart      db "ATUtilities Port-Setup - Version 1.0",13,10,"$"
  95. jfehler:    db "Amiga-Handler an Janus-Interrupt 30 ist nicht aktiv.",13,10
  96.         db "Bitte šberprfen Sie die Installation der ATUtilities.",13,10
  97.         db "Schnittstellen-Daten konnten nicht bertragen werden.",13,10,"$"        
  98.  
  99.  end
  100.